/* Copyright (c) 2004-2023 Peigen.info. All rights reserved. */
package info.peigen.hotpot.manage.core.manage.form;

import info.peigen.hotpot.common.service.base.manage.ManageFormBase;
import info.peigen.hotpot.manage.core.enums.DeviceType;
import io.swagger.annotations.ApiModelProperty;
import jakarta.validation.constraints.NotEmpty;
import lombok.*;
import lombok.experimental.Accessors;
import lombok.experimental.FieldDefaults;
import lombok.experimental.SuperBuilder;

/**
 * <b>(LoginByValidCodeForm)</b>
 *
 * @author Peigen
 * @version 1.0.0
 * @since 2024/6/11
 */
@EqualsAndHashCode(callSuper = true)
@SuperBuilder
@Data
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults(level = AccessLevel.PRIVATE)
@Accessors(chain = true)
public class LoginByValidCodeForm extends ManageFormBase {
    @ApiModelProperty(value = "手机号", required = true, position = 1)
    @NotEmpty(message = "[手机号]不能为空")
    String     mobile;
    @ApiModelProperty(value = "设备", position = 3)
    @Builder.Default
    DeviceType deviceType = DeviceType.MINI;
    @ApiModelProperty(value = "验证码", required = true, position = 4)
    @NotEmpty(message = "[验证码]不能为空")
    String     validCode;
    @ApiModelProperty(value = "验证码请求号", required = true, position = 5)
    @NotEmpty(message = "[验证码请求号]不能为空")
    String     validCodeReqNo;
}
